LAMMPS (19 Nov 2024)
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:99)
  using 1 OpenMP thread(s) per MPI task
# Removing Binned Velocities of Center of Mass (VCM) from Stress

# This example shows how to remove rigid body motion from
# binned stress calculations. This uses a combination of commands
# from compute chunk/atom, compute temp/chunk, compute
# stress/atom and fix ave/time. We'll show how these commands
# work in the context of a shockwave experiment on a cube of
# atoms. To shock the cube, a rectangular region of atoms is
# frozen, moved into the cube with a constant velocity along the
# x direction, and then unfrozen. As the shockwave begins
# propagating, the body of the cube also moves along the x
# direction. To better understand the stress dynamics of the
# cube we remove the velocity component belonging to the overall
# motion of each bin.

units		    metal
boundary        p p p
atom_style	    atomic
lattice		    fcc 5.3589
Lattice spacing in x,y,z = 5.3589 5.3589 5.3589
processors 		1 * *

# Defining regions for box and atoms.
# In this experiment an elongated simulation cell is
# defined in the x direction to allow for non-periodic
# motion of the atoms.

region		    box1 block -3 24 0 12 0 12 units lattice
region		    box2 block 0 12 0 12 0 12 units lattice

# Creating box and atoms

create_box	    1 box1
Created orthogonal box = (-16.0767 0 0) to (128.6136 64.3068 64.3068)
  1 by 2 by 2 MPI processor grid
create_atoms    1 region box2
Created 7200 atoms
  using lattice units in orthogonal box = (-16.0767 0 0) to (128.6136 64.3068 64.3068)
  create_atoms CPU = 0.001 seconds

mass		    1 40.00

# Adding energy to the system

velocity        all create 600.0 9999

pair_style	    lj/cut 10
pair_coeff	    1 1 0.04 3.405

# Begin time integration

timestep        2e-3

fix	            fix_nve all nve

thermo		    100

run             500
Generated 0 of 0 mixed pair_coeff terms from geometric mixing rule
Neighbor list info ...
  update: every = 1 steps, delay = 0 steps, check = yes
  max neighbors/atom: 2000, page size: 100000
  master list distance cutoff = 12
  ghost atom cutoff = 12
  binsize = 6, bins = 25 11 11
  1 neighbor lists, perpetual/occasional/extra = 1 0 0
  (1) pair lj/cut/opt, perpetual
      attributes: half, newton on
      pair build: half/bin/atomonly/newton
      stencil: half/bin/3d
      bin: standard
Per MPI rank memory allocation (min/avg/max) = 3.662 | 3.662 | 3.662 Mbytes
   Step          Temp          E_pair         E_mol          TotEng         Press     
         0   600           -2252.7567      0             -1694.4304     -974.62456    
       100   284.1896      -1976.961       0             -1712.5101      2462.6396    
       200   308.58965     -1998.6349      0             -1711.4787      1789.0033    
       300   300.55093     -1989.9838      0             -1710.308       1545.8576    
       400   297.91491     -1986.2519      0             -1709.029       1247.7121    
       500   294.66041     -1982.1097      0             -1707.9153      961.03073    
Loop time of 0.942408 on 4 procs for 500 steps with 7200 atoms

Performance: 91.680 ns/day, 0.262 hours/ns, 530.556 timesteps/s, 3.820 Matom-step/s
82.1% CPU use with 4 MPI tasks x 1 OpenMP threads

MPI task timing breakdown:
Section |  min time  |  avg time  |  max time  |%varavg| %total
---------------------------------------------------------------
Pair    | 0.61287    | 0.63781    | 0.65858    |   2.1 | 67.68
Neigh   | 0.030246   | 0.031529   | 0.034546   |   1.0 |  3.35
Comm    | 0.23074    | 0.25145    | 0.27819    |   3.7 | 26.68
Output  | 0.000282   | 0.0003735  | 0.000463   |   0.0 |  0.04
Modify  | 0.005566   | 0.0057635  | 0.005989   |   0.2 |  0.61
Other   |            | 0.01548    |            |       |  1.64

Nlocal:           1800 ave        1814 max        1787 min
Histogram: 1 0 1 0 0 0 0 1 0 1
Nghost:         3713.5 ave        3727 max        3699 min
Histogram: 1 0 1 0 0 0 0 1 0 1
Neighs:         153532 ave      154995 max      152312 min
Histogram: 1 0 1 0 0 1 0 0 0 1

Total # of neighbors = 614128
Ave neighs/atom = 85.295556
Neighbor list builds = 9
Dangerous builds = 0

#------------------------------------#
# Chunk, Stress, and VCM removal steps
#------------------------------------#

# 1. Create 20 equispaced bins sliced along the x direction.
# "units reduced" normalizes the distance from 0 to 1
variable        nbins index 20
variable        fraction equal 1.0/v_nbins
variable        volfrac equal 1/(vol*${fraction})
variable        volfrac equal 1/(vol*0.05)
compute         ch_id all chunk/atom bin/1d x lower ${fraction} units reduced
compute         ch_id all chunk/atom bin/1d x lower 0.05 units reduced

# 2. Calculate temperature bins with VCM aka COM velocities removed.
compute         ch_temp_vcm all temp/chunk ch_id com yes

# 3. Compute per atom stress with VCM removed via temp-ID.
# The velocities from specified temp-ID are used to compute stress
# Stress/atom units are pressure*volume! Optionally handled next step.
compute         atom_stress_vcm all stress/atom ch_temp_vcm

# 4. Divide out bin volume from xx stress component.
variable        stress atom -(c_atom_stress_vcm[1])/(vol*${fraction})
variable        stress atom -(c_atom_stress_vcm[1])/(vol*0.05)

# 5. Sum the per atom stresses in each bin.
compute         ch_stress_vcm all reduce/chunk ch_id sum v_stress

# 6. Average and output to file.
# The average output is every 100 steps with samples collected 20 times with 5 step intervals
# fix             ave_stress_vcm all ave/time 5 20 100 c_ch_stress_vcm mode vector file stress_xx.out

#------------------------------------#

# Piston compressing along x direction

region 			piston block -1 1 INF INF INF INF units lattice
group          	piston region piston
864 atoms in group piston
fix 			fix_piston piston move linear 5 0 0 units box # strain rate ~ 8e10 1/s

thermo_style    custom step temp ke pe lx ly lz pxx pyy pzz econserve

# Atom dump

# dump		    atom_dump all atom 50 dump.vcm

# # Image dumps

# dump		    2 all image 250 image.*.jpg type type # 		        axes yes 0.8 0.02 view 60 -30
# dump_modify	    2 pad 1

# # Movie dump

# dump		    3 all movie 125 movie.avi type type # 		        axes yes 0.8 0.02 view 60 -30
# dump_modify	    3 pad 1

run	            500
Generated 0 of 0 mixed pair_coeff terms from geometric mixing rule
WARNING: One or more atoms are time integrated more than once (src/modify.cpp:296)
Per MPI rank memory allocation (min/avg/max) = 4.916 | 4.916 | 4.916 Mbytes
   Step          Temp          KinEng         PotEng           Lx             Ly             Lz            Pxx            Pyy            Pzz         Econserve   
       500   294.66041      274.19441     -1982.1097      144.6903       64.3068        64.3068        645.25795      1119.5337      1118.3006     -1707.9153    
       600   357.88641      333.02897     -1951.8158      144.6903       64.3068        64.3068        2176.0343      1929.2787      1981.8479     -1618.7869    
       700   418.41159      389.3503      -1912.8337      144.6903       64.3068        64.3068        3702.2875      3043.7607      3081.1607     -1523.4834    
       800   483.71102      450.11428     -1875.7955      144.6903       64.3068        64.3068        5254.3875      4190.9789      4158.3561     -1425.6813    
       900   586.0893       545.38176     -1870.9313      144.6903       64.3068        64.3068        6509.1439      4756.2216      4724.7086     -1325.5495    
      1000   686.32946      638.65962     -1874.811       144.6903       64.3068        64.3068        7515.1606      5193.049       5261.8688     -1236.1514    
Loop time of 0.656417 on 4 procs for 500 steps with 7200 atoms

Performance: 131.624 ns/day, 0.182 hours/ns, 761.711 timesteps/s, 5.484 Matom-step/s
92.8% CPU use with 4 MPI tasks x 1 OpenMP threads

MPI task timing breakdown:
Section |  min time  |  avg time  |  max time  |%varavg| %total
---------------------------------------------------------------
Pair    | 0.51672    | 0.52334    | 0.53259    |   0.8 | 79.73
Neigh   | 0.045091   | 0.045915   | 0.047402   |   0.4 |  6.99
Comm    | 0.060735   | 0.071794   | 0.079302   |   2.6 | 10.94
Output  | 0.000208   | 0.000389   | 0.000926   |   0.0 |  0.06
Modify  | 0.006007   | 0.0061595  | 0.00626    |   0.1 |  0.94
Other   |            | 0.008815   |            |       |  1.34

Nlocal:           1800 ave        1811 max        1785 min
Histogram: 1 0 0 1 0 0 0 0 0 2
Nghost:        3713.25 ave        3727 max        3702 min
Histogram: 2 0 0 0 0 0 0 1 0 1
Neighs:         161477 ave      162958 max      159732 min
Histogram: 1 0 0 0 1 0 0 1 0 1

Total # of neighbors = 645909
Ave neighs/atom = 89.709583
Neighbor list builds = 15
Dangerous builds = 0

unfix           fix_piston

run             1500
Generated 0 of 0 mixed pair_coeff terms from geometric mixing rule
Per MPI rank memory allocation (min/avg/max) = 4.541 | 4.541 | 4.541 Mbytes
   Step          Temp          KinEng         PotEng           Lx             Ly             Lz            Pxx            Pyy            Pzz         Econserve   
      1000   686.32946      638.65962     -1874.811       144.6903       64.3068        64.3068        7515.1606      5193.049       5261.8688     -1236.1514    
      1100   709.7333       660.43791     -1898.2844      144.6903       64.3068        64.3068        7932.8638      5334.6171      5364.5335     -1237.8465    
      1200   713.27253      663.73132     -1902.4588      144.6903       64.3068        64.3068        7957.2574      5500.6231      5538.0516     -1238.7275    
      1300   705.44796      656.45022     -1895.1575      144.6903       64.3068        64.3068        7996.7265      5584.6233      5538.2494     -1238.7072    
      1400   711.86463      662.42121     -1899.8416      144.6903       64.3068        64.3068        7674.2462      5292.4915      5294.5366     -1237.4204    
      1500   742.18946      690.63979     -1924.9562      144.6903       64.3068        64.3068        6047.915       4056.6156      4014.4446     -1234.3164    
      1600   762.81764      709.83522     -1939.8563      144.6903       64.3068        64.3068        4185.5873      2530.0572      2576.1943     -1230.0211    
      1700   754.40428      702.00621     -1927.7337      144.6903       64.3068        64.3068        2662.7604      1509.1985      1484.7252     -1225.7275    
      1800   721.03504      670.95468     -1893.5556      144.6903       64.3068        64.3068        1765.8783      835.89765      861.9432      -1222.6009    
      1900   689.64162      641.74172     -1861.8886      144.6903       64.3068        64.3068        941.58148      312.93205      409.79901     -1220.1469    
      2000   650.79664      605.59477     -1823.9889      144.6903       64.3068        64.3068        543.39234      28.48735       80.396505     -1218.3941    
      2100   616.04072      573.25286     -1790.1764      144.6903       64.3068        64.3068        308.16444     -235.20997     -248.22531     -1216.9235    
      2200   587.18712      546.40333     -1761.8878      144.6903       64.3068        64.3068        37.044801     -476.50396     -470.83059     -1215.4845    
      2300   562.84178      523.74892     -1738.2239      144.6903       64.3068        64.3068       -139.28348     -711.17273     -730.80877     -1214.475     
      2400   540.48362      502.94367     -1716.3529      144.6903       64.3068        64.3068       -320.98222     -951.2066      -943.93966     -1213.4093    
      2500   519.80431      483.70067     -1696.1896      144.6903       64.3068        64.3068       -471.61317     -1088.8457     -1131.5396     -1212.4889    
Loop time of 1.97213 on 4 procs for 1500 steps with 7200 atoms

Performance: 131.431 ns/day, 0.183 hours/ns, 760.598 timesteps/s, 5.476 Matom-step/s
95.3% CPU use with 4 MPI tasks x 1 OpenMP threads

MPI task timing breakdown:
Section |  min time  |  avg time  |  max time  |%varavg| %total
---------------------------------------------------------------
Pair    | 1.5455     | 1.5599     | 1.5723     |   0.8 | 79.10
Neigh   | 0.16844    | 0.1704     | 0.17237    |   0.4 |  8.64
Comm    | 0.19002    | 0.2047     | 0.22068    |   2.4 | 10.38
Output  | 0.000525   | 0.0006785  | 0.001077   |   0.0 |  0.03
Modify  | 0.012434   | 0.012601   | 0.012777   |   0.1 |  0.64
Other   |            | 0.02388    |            |       |  1.21

Nlocal:           1800 ave        1833 max        1776 min
Histogram: 1 0 1 0 1 0 0 0 0 1
Nghost:           3702 ave        3732 max        3674 min
Histogram: 1 0 0 1 0 0 1 0 0 1
Neighs:         129380 ave      132578 max      127003 min
Histogram: 1 0 0 2 0 0 0 0 0 1

Total # of neighbors = 517520
Ave neighs/atom = 71.877778
Neighbor list builds = 54
Dangerous builds = 0
Total wall time: 0:00:03
